λ¨μΌ κ³΅κ° κΈ°λ₯μ κ°μΆ CSS λ¨λ μμ½λμΈ μ μ κΈ°μ μ λ§μ€ν°νμ¬ λ€μν μΉ νλ«νΌμμ μ¬μ©μ κ²½νκ³Ό μ κ·Όμ±μ ν₯μμν€μΈμ.
CSS λ¨λ μμ½λμΈ: ν₯μλ UXλ₯Ό μν λ¨μΌ κ³΅κ° μμ ― μ μ
μμ½λμΈμ νλ μΉ λμμΈμ νμ μμλ‘, λ§μ μμ μ 보λ₯Ό μννκΈ° μ¬μ΄ νμμΌλ‘ κΉλνκ³ ν¨μ¨μ μΌλ‘ μ 곡ν©λλ€. FAQ, μ ν μ€λͺ , λ΄λΉκ²μ΄μ λ©λ΄ λ±μ νΉν μ μ©ν©λλ€. μ΄ κΈμμλ ν λ²μ νλμ μμ½λμΈ μΉμ λ§ μ΄ μ μλ λ¨μΌ 곡κ°(single disclosure) λμμ κ°μ§ CSS λ¨λ μμ½λμΈ μ μ λ°©λ²μ μμΈν λ€λ£Ήλλ€. μ΄ μ κ·Ό λ°©μμ μ½ν μΈ κ³ΌλΆνλ₯Ό λ°©μ§νκ³ μ§μ€μ μΈ λΈλΌμ°μ§μ μ λνμ¬ μ¬μ©μ κ²½νμ ν₯μμν΅λλ€.
CSS λ¨λ μμ½λμΈμ μ₯μ μ΄ν΄νκΈ°
μ ν΅μ μΈ μλ°μ€ν¬λ¦½νΈ κΈ°λ° μμ½λμΈμ μ’
μ’
μν κ΄λ¦¬μ μ΄λ²€νΈ μ²λ¦¬λ₯Ό μꡬνμ¬ μ½λ 볡μ‘μ±μ μ¦κ°μν¬ μ μμ΅λλ€. λ°λ©΄, CSS λ¨λ
μμ½λμΈμ μλ°μ€ν¬λ¦½νΈμ μμ‘΄νμ§ μκ³ CSS μ νμμ :checked
κ°μ ν΄λμ€μ νμ νμ©νμ¬ μνλ κΈ°λ₯μ ꡬνν©λλ€. κ·Έ κ²°κ³Όλ λ€μκ³Ό κ°μ΅λλ€:
- μ±λ₯ ν₯μ: μλ°μ€ν¬λ¦½νΈλ₯Ό μ κ±°νμ¬ νμ΄μ§ λ‘λ μκ°μ μ€μ΄κ³ μ λ°μ μΈ μ±λ₯μ κ°μ ν©λλ€.
- μ κ·Όμ± κ°ν: μ μ ν HTML μ맨ν±κ³Ό ARIA μμ±μ νμ©νμ¬ CSS λ¨λ μμ½λμΈμ μ½κ² μ κ·Ό κ°λ₯νκ² λ§λ€ μ μμ΅λλ€.
- μ μ§λ³΄μ κ°μν: μ½λκ° μ μμλ‘ μ μ§λ³΄μμ λλ²κΉ μ΄ μ¬μμ§λλ€.
- λ λμ SEO: κΉλν HTMLκ³Ό CSSλ κ²μ μμ§ μ΅μ νλ₯Ό κ°μ ν μ μμ΅λλ€.
κ΅¬μ± μμ: HTML ꡬ쑰
CSS λ¨λ μμ½λμΈμ κΈ°μ΄λ μ ꡬ쑰νλ HTML λ§ν¬μ μ μμ΅λλ€. μ°λ¦¬λ λ€μ μμλ€μ μ¬μ©ν κ²μ λλ€:
<input type="radio">
: λΌλμ€ λ²νΌμ ν λ²μ νλμ μΉμ λ§ μ΄λ¦¬λλ‘ λ³΄μ₯νλ λ° μ¬μ©λ©λλ€.name
μμ±μ λΌλμ€ λ²νΌλ€μ κ·Έλ£Ήννλ λ° λ§€μ° μ€μν©λλ€.<label>
: λ μ΄λΈμ λΌλμ€ λ²νΌκ³Ό μ°κ²°λμ΄ μμ½λμΈ ν€λ μν μ ν©λλ€.<div>
: μμ½λμΈ μ½ν μΈ λ₯Ό λ΄λ 컨ν μ΄λμ λλ€.
κΈ°λ³Έμ μΈ HTML ꡬ쑰λ λ€μκ³Ό κ°μ΅λλ€:
<div class="accordion-container">
<input type="radio" name="accordion" id="section1">
<label for="section1">μΉμ
1 μ λͺ©</label>
<div class="accordion-content">
<p>μΉμ
1μ μ½ν
μΈ μ
λλ€.</p>
</div>
<input type="radio" name="accordion" id="section2">
<label for="section2">μΉμ
2 μ λͺ©</label>
<div class="accordion-content">
<p>μΉμ
2μ μ½ν
μΈ μ
λλ€.</p>
</div>
<input type="radio" name="accordion" id="section3">
<label for="section3">μΉμ
3 μ λͺ©</label>
<div class="accordion-content">
<p>μΉμ
3μ μ½ν
μΈ μ
λλ€.</p>
</div>
</div>
μ€λͺ :
accordion-container
ν΄λμ€λ μ 체 μμ½λμΈ κ΅¬μ‘°μ μ€νμΌλ§μ μ¬μ©λ©λλ€.- κ° μμ½λμΈ μΉμ
μ
input
(λΌλμ€ λ²νΌ),label
, κ·Έλ¦¬κ³ μ½ν μΈ λ₯Ό λ΄λdiv
λ‘ κ΅¬μ±λ©λλ€. - λΌλμ€ λ²νΌμ
name
μμ±μ "accordion"μΌλ‘ μ€μ νμ¬ κ·Έλ£Ήννκ³ , ν λ²μ νλλ§ μ νλλλ‘ λ³΄μ₯ν©λλ€. label
μfor
μμ±μ ν΄λΉinput
μid
μ μΌμΉμμΌ λ μ΄λΈμ λΌλμ€ λ²νΌμ μ°κ²°ν©λλ€.
CSSλ‘ μμ½λμΈ μ€νμΌλ§νκΈ°
μ΄μ μμ½λμΈμ μ€νμΌμ μ μ©νκ³ λ¨μΌ κ³΅κ° λμμ ꡬννλ CSSλ₯Ό μΆκ°ν΄ λ³΄κ² μ΅λλ€.
.accordion-container {
width: 100%;
border: 1px solid #ccc;
margin-bottom: 10px;
}
input[type="radio"] {
display: none;
}
label {
display: block;
padding: 10px;
background-color: #f0f0f0;
border-bottom: 1px solid #ccc;
cursor: pointer;
}
.accordion-content {
padding: 10px;
background-color: #fff;
display: none; /* μ΄κΈ°μ μ½ν
μΈ μ¨κΈ°κΈ° */
}
input[type="radio"]:checked + label {
background-color: #ddd;
}
input[type="radio"]:checked + label + .accordion-content {
display: block; /* λΌλμ€ λ²νΌμ΄ μ νλλ©΄ μ½ν
μΈ νμ */
}
μ€λͺ :
.accordion-container
: 컨ν μ΄λμ ν λ리μ μ¬λ°± μ€νμΌμ μ μ©ν©λλ€.input[type="radio"]
: λ μ΄λΈλ§ νμνκΈ° μν΄ λΌλμ€ λ²νΌμ μ¨κΉλλ€.label
: λ μ΄λΈμ μμ½λμΈ ν€λμ²λΌ 보μ΄λλ‘ μ€νμΌμ μ μ©ν©λλ€..accordion-content
:display: none
μ μ¬μ©νμ¬ μ΄κΈ°μ μ½ν μΈ λ₯Ό μ¨κΉλλ€.input[type="radio"]:checked + label
: ν΄λΉ λΌλμ€ λ²νΌμ΄ μ νλμμ λ λ μ΄λΈμ μ€νμΌμ μ μ©ν©λλ€.input[type="radio"]:checked + label + .accordion-content
: μ΄κ²μ΄ λ¨μΌ κ³΅κ° λμμ ν΅μ¬μ λλ€. μΈμ νμ μ νμ(+)λ₯Ό μ¬μ©νμ¬ μ νλ λΌλμ€ λ²νΌμlabel
λ°λ‘ λ€μ μ€λaccordion-content
λ₯Ό λμμΌλ‘ μ§μ νκ³ ,display
λ₯Όblock
μΌλ‘ μ€μ νμ¬ λ³΄μ΄κ² λ§λλλ€.
ARIA μμ±μΌλ‘ μ κ·Όμ± ν₯μμν€κΈ°
μ₯μ κ° μλ μ¬μ©μλ μ°λ¦¬ μμ½λμΈμ μ κ·Όν μ μλλ‘ νλ €λ©΄ ARIA μμ±μ μΆκ°ν΄μΌ ν©λλ€. ARIA(Accessible Rich Internet Applications) μμ±μ μ€ν¬λ¦° 리λμ κ°μ 보쑰 κΈ°μ μ μλ§¨ν± μ 보λ₯Ό μ 곡ν©λλ€.
λ€μκ³Ό κ°μ΄ μ κ·Όμ±μ ν₯μμν¬ μ μμ΅λλ€:
<div class="accordion-container" role="presentation">
<input type="radio" name="accordion" id="section1" aria-controls="content1">
<label for="section1" aria-expanded="false" aria-controls="content1">μΉμ
1 μ λͺ©</label>
<div id="content1" class="accordion-content" role="region" aria-labelledby="section1">
<p>μΉμ
1μ μ½ν
μΈ μ
λλ€.</p>
</div>
<input type="radio" name="accordion" id="section2" aria-controls="content2">
<label for="section2" aria-expanded="false" aria-controls="content2">μΉμ
2 μ λͺ©</label>
<div id="content2" class="accordion-content" role="region" aria-labelledby="section2">
<p>μΉμ
2μ μ½ν
μΈ μ
λλ€.</p>
</div>
<input type="radio" name="accordion" id="section3" aria-controls="content3">
<label for="section3" aria-expanded="false" aria-controls="content3">μΉμ
3 μ λͺ©</label>
<div id="content3" class="accordion-content" role="region" aria-labelledby="section3">
<p>μΉμ
3μ μ½ν
μΈ μ
λλ€.</p>
</div>
</div>
μ€λͺ :
- 컨ν
μ΄λμ
role="presentation"
μ 컨ν μ΄λμ μλ§¨ν± μλ―Έλ₯Ό μ¨κ²¨, λ΄ν¬λ ARIA μν μ΄ κ΅¬μ‘°λ₯Ό μ¬λ°λ₯΄κ² μ λ¬ν μ μλλ‘ ν©λλ€. aria-controls
: νμ¬ μμκ° μ μ΄νλ μμλ₯Ό λνλ λλ€(μ΄ κ²½μ°, μ½ν μΈ μΉμ ).aria-expanded
: μ μ΄λλ μμκ° νμ¬ νμ₯λμλμ§ μΆμλμλμ§λ₯Ό λνλ λλ€. μλ°μ€ν¬λ¦½νΈλ‘ μ΄ κ°μ λμ μΌλ‘ λ³κ²½νμ§λ μμ§λ§, ν¬ν¨νλ κ²μ΄ μ’μ μ΅κ΄μ΄λ©°, λ 볡μ‘ν μμ μμλ μλ°μ€ν¬λ¦½νΈλ₯Ό μ¬μ©νμ¬ κ°μ ν κΈν μ μμ΅λλ€. μ΄κΈ°κ°μfalse
λ‘ μ€μ λ©λλ€.role="region"
: μ½ν μΈ μΉμ μ νμ΄μ§μ κ³ μ ν μμμΌλ‘ μλ³ν©λλ€.aria-labelledby
: μ½ν μΈ μΉμ μ μ€λͺ νλ λ μ΄λΈμ μλ³ν©λλ€.
μ κ·Όμ±μ μν μ€μ κ³ λ €μ¬ν:
- ν€λ³΄λ νμ: μ¬μ©μκ° ν€λ³΄λ(μ: Tab ν€)λ₯Ό μ¬μ©νμ¬ μμ½λμΈ μΉμ μ νμν μ μλλ‘ λ³΄μ₯ν΄μΌ ν©λλ€.
- μ€ν¬λ¦° 리λ νΈνμ±: μ€ν¬λ¦° 리λλ‘ μμ½λμΈμ ν μ€νΈνμ¬ μ½ν μΈ κ° μ¬λ°λ₯΄κ² μλ΄λλμ§ νμΈν΄μΌ ν©λλ€.
- μμ λλΉ: μκ° μ₯μ κ° μλ μ¬μ©μλ₯Ό μν΄ ν μ€νΈμ λ°°κ²½ κ°μ μΆ©λΆν μμ λλΉλ₯Ό 보μ₯ν΄μΌ ν©λλ€.
μ¬μ©μ μ μ λ° κ°μ μ¬ν
κΈ°λ³Έμ μΈ CSS λ¨λ μμ½λμΈμ νΉμ λμμΈ μꡬμ¬νμ λ§κ² μΆκ°μ μΌλ‘ μ¬μ©μ μ μνκ³ κ°μ ν μ μμ΅λλ€.
μ ν(Transition) μΆκ°νκΈ°
λ λΆλλ¬μ΄ μ¬μ©μ κ²½νμ λ§λ€κΈ° μν΄ μμ½λμΈ μ½ν μΈ μ CSS μ ν(transition)μ μΆκ°ν μ μμ΅λλ€.
.accordion-content {
padding: 10px;
background-color: #fff;
display: none;
transition: max-height 0.3s ease-out; /* μ ν μΆκ° */
max-height: 0;
overflow: hidden;
}
input[type="radio"]:checked + label + .accordion-content {
display: block;
max-height: 500px; /* μ νμ μν μ΅λ λμ΄ μ€μ */
}
μ€λͺ :
.accordion-content
μtransition
μμ±μ μΆκ°νμ¬max-height
μμ±μ μ λλ©μ΄μ μ μ μ©νμ΅λλ€.- μ½ν
μΈ λ₯Ό μ¨κΈ°κΈ° μν΄ μ΄κΈ°
max-height
λ₯Ό0
μΌλ‘ μ€μ νμ΅λλ€. - λΌλμ€ λ²νΌμ΄ μ νλλ©΄,
max-height
λ₯Ό μΆ©λΆν ν° κ°(μ:500px
)μΌλ‘ μ€μ νμ¬ μ½ν μΈ κ° λΆλλ½κ² νμ₯λλλ‘ ν©λλ€.overflow: hidden
μ μ€μ μ½ν μΈ λμ΄κ° 500pxλ³΄λ€ μμ κ²½μ° μ ν μ€μ μ½ν μΈ κ° λμΉλ κ²μ λ°©μ§ν©λλ€.
μμ΄μ½μΌλ‘ μ€νμΌλ§νκΈ°
μμ½λμΈ ν€λμ μμ΄μ½μ μΆκ°νλ©΄ μκ°μ λ§€λ ₯κ³Ό μ¬μ©μ μ΄ν΄λλ₯Ό λμΌ μ μμ΅λλ€. μ΄λ₯Ό μν΄ CSS κ°μ μμλ ν°νΈ μμ΄μ½μ μ¬μ©ν μ μμ΅λλ€.
CSS κ°μ μμ μ¬μ©νκΈ°:
label::after {
content: '+'; /* μ΄κΈ° μμ΄μ½ */
float: right;
font-size: 1.2em;
}
input[type="radio"]:checked + label::after {
content: '-'; /* νμ₯ μ μμ΄μ½ λ³κ²½ */
}
ν°νΈ μμ΄μ½ μ¬μ©νκΈ° (μ: Font Awesome):
- HTMLμ Font Awesome CSSλ₯Ό ν¬ν¨μν΅λλ€:
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" integrity="..." crossorigin="anonymous" />
- λ μ΄λΈμ μ μ ν Font Awesome ν΄λμ€λ₯Ό μ¬μ©ν©λλ€:
<label for="section1">μΉμ
1 μ λͺ© <i class="fas fa-plus"></i></label>
κ·Έλ° λ€μ, μΉμ μ΄ νμ₯λμμ λ μμ΄μ½μ λ³κ²½νκΈ° μν΄ CSSλ₯Ό μ¬μ©ν©λλ€:
input[type="radio"]:checked + label i.fas.fa-plus {
display: none;
}
input[type="radio"]:checked + label {
/* λ§μ΄λμ€ μμ΄μ½ μ½μ
*/
}
input[type="radio"]:checked + label::before {
font-family: "Font Awesome 5 Free";
font-weight: 900;
content: "\f068"; /* fa-minus μ λμ½λ */
float:right;
}
λ°μν λμμΈ κ³ λ €μ¬ν
λ°μν λμμΈ κΈ°μ μ μ¬μ©νμ¬ λ€μν νλ©΄ ν¬κΈ°μμ μμ½λμΈμ΄ μ μλνλλ‘ ν΄μΌ ν©λλ€. λ―Έλμ΄ μΏΌλ¦¬λ₯Ό μ¬μ©νμ¬ νλ©΄ λλΉμ λ°λΌ μμ½λμΈμ μ€νμΌμ μ‘°μ ν μ μμ΅λλ€.
μμ:
@media (max-width: 768px) {
.accordion-container {
width: 100%; /* μμ νλ©΄μ λ§κ² λλΉ μ‘°μ */
}
label {
padding: 8px;
font-size: 0.9em; /* ν°νΈ ν¬κΈ° μ‘°μ */
}
}
κ³ κΈ κΈ°μ
κΈ°λ³Έμ μΈ CSS λ¨λ μμ½λμΈμ κ²¬κ³ ν κΈ°μ΄λ₯Ό μ 곡νμ§λ§, κΈ°λ₯κ³Ό μ¬μ©μ κ²½νμ λμ± ν₯μμν¬ μ μλ κ³ κΈ κΈ°μ λ€μ΄ μμ΅λλ€.
λ‘컬 μ€ν 리μ§λ₯Ό μ΄μ©ν μν μ μ§
μλ°μ€ν¬λ¦½νΈ(μμ CSS μ κ·Ό λ°©μμλ μ΄κΈλμ§λ§)μ λ‘컬 μ€ν 리μ§λ₯Ό μ¬μ©νμ¬ μμ½λμΈμ μνλ₯Ό κΈ°μ΅ν μ μμ΅λλ€. μ΄λ κ² νλ©΄ μ¬μ©μκ° νμ΄μ§λ‘ λμμμ λ μ΄μ μ μ΄μλ μΉμ μ΄ κ·Έλλ‘ μ΄λ € μκ² λ©λλ€.
λμ μ½ν μΈ λ‘λ©
μ½ν μΈ μμ΄ λ§μ μμ½λμΈμ κ²½μ°, AJAXλ₯Ό μ¬μ©νμ¬ λμ μΌλ‘ μ½ν μΈ λ₯Ό λ‘λν μ μμ΅λλ€. μ΄λ μ΄κΈ° νμ΄μ§ λ‘λ μκ°μ κ°μ νκ³ λμν μ¬μ©λμ μ€μΌ μ μμ΅λλ€.
μΌλ°μ μΈ λ¬Έμ ν΄κ²°
CSS λ¨λ μμ½λμΈμ ꡬνν λ λ°μν μ μλ μΌλ°μ μΈ λ¬Έμ μ ν΄κ²° λ°©λ²μ λ€μκ³Ό κ°μ΅λλ€:
- μμ½λμΈμ΄ μλνμ§ μμ λ:
- λΌλμ€ λ²νΌμ
name
μμ±μ΄ λͺ¨λ μΉμ μμ λμΌνμ§ νμΈνμΈμ. label
μfor
μμ±μ΄ ν΄λΉinput
μid
μ μΌμΉνλμ§ νμΈνμΈμ.- CSS μ νμμ μ€νλ μ€λ₯κ° μλμ§ νμΈνμΈμ.
- λΌλμ€ λ²νΌμ
- μ½ν
μΈ κ° μ²μμ μ¨κ²¨μ§μ§ μμ λ:
.accordion-content
ν΄λμ€μdisplay: none
μ€νμΌμ΄ μ μ©λμλμ§ νμΈνμΈμ.
- μ ν(Transition)μ΄ μλνμ§ μμ λ:
transition
μμ±μ΄ μ¬λ°λ₯Έ μμ(.accordion-content
)μ μ μ©λμλμ§ νμΈνμΈμ.max-height
κ° μ΄κΈ°μ0
μΌλ‘ μ€μ λκ³ , λΌλμ€ λ²νΌμ΄ μ νλμμ λ μΆ©λΆν ν° κ°μΌλ‘ μ€μ λλμ§ νμΈνμΈμ.
- μ κ·Όμ± λ¬Έμ :
- μ€ν¬λ¦° 리λλ₯Ό μ¬μ©νμ¬ μμ½λμΈμ ν μ€νΈνκ³ μ κ·Όμ± λ¬Έμ λ₯Ό νμ νμΈμ.
- ARIA μμ±μ΄ μ¬λ°λ₯΄κ² ꡬνλμλμ§ νμΈνμΈμ.
μ€μ μ μ© μ¬λ‘
CSS λ¨λ μμ½λμΈμ λ€μν μ€μ μλ리μ€μμ μ¬μ©λ μ μμ΅λλ€:
- FAQ νμ΄μ§: μμ£Ό 묻λ μ§λ¬Έμ κ°κ²°νκ³ μ²΄κ³μ μΌλ‘ μ μν©λλ€.
μμ: ν λν μΉμ¬μ΄νΈμμ μ νμ μ ν κ΄λ ¨ FAQλ₯Ό νμνκΈ° μν΄ μμ½λμΈμ μ¬μ©. λΉμ μ건, μ¬λ¬ ν΅νλ‘ λ λ±λ‘κΈ, μμ μ΅μ κ³Ό κ°μ μ£Όμ λ₯Ό λ€λ£Ήλλ€.
- μ ν μ€λͺ
: μ ν μΈλΆ μ 보, μ¬μ, 리뷰λ₯Ό νμν©λλ€.
μμ: ν μ΄μ»€λ¨Έμ€ μΉμ¬μ΄νΈμμ κΈλ‘λ² κ³ κ°μ μν΄ κΈ°μ μ¬μ(μ μ, ν¬κΈ°), μ¬λ£ ꡬμ±, μμ°μ§ λ± μ νμ λ€μν μΈ‘λ©΄μ 보μ¬μ£ΌκΈ° μν΄ μμ½λμΈμ μ¬μ©.
- λ΄λΉκ²μ΄μ
λ©λ΄: 볡μ‘ν νμ ꡬ쑰λ₯Ό κ°μ§ μΉμ¬μ΄νΈλ₯Ό μν νμ₯ κ°λ₯ν λ©λ΄λ₯Ό λ§λλλ€.
μμ: 볡μ‘ν μ‘°μ§ κ΅¬μ‘°λ₯Ό κ°μ§ μ λΆ μΉμ¬μ΄νΈμμ λ€μν λ°°κ²½μ μλ―Όλ€μ μν΄ λΆμμ μλΉμ€λ₯Ό λλμ΄ λ³΄μ¬μ£ΌκΈ° μν΄ μμ½λμΈμ μ¬μ©. μΈμ΄λ μ λΆμ λν μΉμλμ κ΄κ³μμ΄ μ½ν μΈ μ μ½κ² μ κ·Όν μ μλλ‘ λ³΄μ₯ν©λλ€.
- μμ: κΈ΄ μμμ κ΄λ¦¬νκΈ° μ¬μ΄ μΉμ
μΌλ‘ λλλλ€.
μμ: κΈλ‘λ² μ₯νκΈ νλ‘κ·Έλ¨μ μ¨λΌμΈ μ§μμμμ κ°μΈ μ 보, νλ ₯, μ¬μ μ 보μ κ°μ μΉμ μ λΆλ¦¬νκΈ° μν΄ μμ½λμΈμ μ¬μ©. λ€μν κ΅μ‘ μμ€ν μ κ°μ§ μ¬λ¬ κ΅κ°μ μ§μμλ€μ μν μ¬μ©μ κ²½νμ κ°μ ν©λλ€.
κ²°λ‘
λ¨μΌ κ³΅κ° κΈ°λ₯μ κ°μΆ CSS λ¨λ μμ½λμΈμ μΉμ¬μ΄νΈμ μ¬μ©μ κ²½νκ³Ό μ κ·Όμ±μ ν₯μμν€λ κ°λ ₯νκ³ ν¨μ¨μ μΈ λ°©λ²μ μ 곡ν©λλ€. CSS μ νμμ ARIA μμ±μ νμ νμ©νμ¬, μ±λ₯μ΄ λ°μ΄λκ³ μ μ§λ³΄μκ° μ©μ΄νλ©° λ€μν μ¬μ©μκ° μ κ·Όν μ μλ μΈν°λν°λΈ μμλ₯Ό λ§λ€ μ μμ΅λλ€. κ°λ¨ν FAQ νμ΄μ§λ₯Ό λ§λ€λ 볡μ‘ν μΉ μ ν리μΌμ΄μ μ ꡬμΆνλ , CSS λ¨λ μμ½λμΈμ μ 보λ₯Ό λͺ ννκ³ λ§€λ ₯μ μΈ λ°©μμΌλ‘ μ μνμ¬ μ μΈκ³ μ¬μ©μλ₯Ό μν λ λμ μ λ°μ μΈ μ¬μ©μ κ²½νμ κΈ°μ¬ν μ μμ΅λλ€.
μΆκ° νμ΅ μλ£
- MDN Web Docs: https://developer.mozilla.org/en-US/docs/Web/CSS
- ARIA Authoring Practices Guide (APG): https://www.w3.org/WAI/ARIA/apg/
- WebAIM: https://webaim.org/